<template>
    <!-- 问题：max 值 不知道什么时候能拿到，但总归有一刻可以拿到 
        使用 watch 属性监听，来监听 父组件攒底过来的 max 值，不管 watch 会被触发几次，但是最后一次肯定是一个 合法的 max 数值
    -->
    <div class="mui-numbox" data-numbox-min="1" :data-numbox-max="max">
        <button class="mui-btn mui-btn-numbox-minus" type="button">-</button>
        <input id="test" class="mui-input-numbox" type="number" value="1" @change="countChanged" ref="numbox">
        <button class="mui-btn mui-btn-numbox-plus" type="button">+</button>
    </div>

    <!-- 
        分析 子组件什么时候将数据传递给父组件？！--当中间的值发生改变的时候 监听文本框@change
     -->
</template>

<script>
import mui from '../../lib/MUI/js/mui.min.js';

export default {
    data(){
        return {
            
        }
    },
    mounted(){
        // 初始化数字选择框组件
        mui(".mui-numbox").numbox();
        // console.log(this.max);
    },
    methods: {
        countChanged(){
            // 每当 文本框的数据被修改的时候，立即将 最新的数据 通过事件调用 传递给父组件
            // console.log(this.$refs.numbox.value);
            this.$emit('getcount', parseInt(this.$refs.numbox.value));
        }
    },
    props: ['max'],
    watch: {
        // 属性监听
        "max": function(newVal){
            //  使用 JS API 设置 numbox 的 最大值
            mui(".mui-numbox").numbox().setOption('max', newVal);
        },
    }
}
</script>

<style scoped>
.mui-numbox{
    height: 28px;
}
</style>